package net.xju3_4.service;

import java.util.Map;

/**
 * 支付模拟服务接口
 * 独立的支付模拟功能服务接口
 */
public interface PaymentSimulationService {
    
    /**
     * 模拟支付处理
     * @param paymentData 支付数据
     * @return 支付结果
     */
    Map<String, Object> simulatePayment(Map<String, Object> paymentData);
    
    /**
     * 获取支付状态
     * @param orderId 订单ID
     * @param userId 用户ID
     * @return 支付状态信息
     */
    Map<String, Object> getPaymentStatus(String orderId, String userId);
    
    /**
     * 获取支付方式列表
     * @return 支付方式列表
     */
    Map<String, Object> getPaymentMethods();
    
    /**
     * 创建支付订单
     * @param orderData 订单数据
     * @return 支付订单信息
     */
    Map<String, Object> createPaymentOrder(Map<String, Object> orderData);
    
    /**
     * 处理支付回调
     * @param paymentNo 支付流水号
     * @param status 支付状态
     * @return 处理结果
     */
    boolean handlePaymentCallback(String paymentNo, String status);
    
    /**
     * 生成支付流水号
     * @return 支付流水号
     */
    String generatePaymentNo();
}
